Announcement

Collapse
No announcement yet.

{The List-} Movement, supply, etc.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Current AI technology has enough problems with just point defense. Its likely that this system will seriously degrade the AI's capability to compete with a human.

    Any complication involving the map will enevitably have this effect. A human will always be able to flank better, because a human can instinctively ignore clutter in a 2d space.

    CTP's flanking system inherently allows the AI to compete on an even playing field.

    [EDIT: Dumb grammar ]
    Last edited by MrBaggins; January 23, 2004, 13:10.

    Comment


    • The last thing I want to have to do is fortify a unit or a stack of units and then have to pick a direction. Can't we assume for play purposes that the commanders of those units will have some tiny amount of intelligence (in both senses of the word)?

      I know that directional fortification of one unit is not a big deal. Just like micromanging the tiles worked in one city is not a big deal, and moving one worker around is not a big deal. In Civ, anything you have to do once you have to do literally thousands of times in a game, so we should keep things simple.

      MrBaggins makes a great point about the AI, too. Why add another decision to an array of choices it is already too primitive to make?

      Flanking on a tactical level is easily done with stacked combat. I don't think anyone for stacked combat is against those stacks involving flanking. Am I wrong about this?

      As for flanking "mattering" in the strategic level... well, I've been a supporter before of simultaneous moves, and as mentioned a few posts back this would provide exactly the sort of thing (abstracted, to be sure) we're looking for.

      Comment


      • Originally posted by MrBaggins
        Current AI technology has enough problems with just point defense. Its likely that this system will seriously degrade the AI's capability to compete with a human.

        Any complication involving the map will enevitably have this effect. A human will always be able to flank better, because a human can instinctively ignore clutter in a 2d space.

        CTP's flanking system inherently allows the AI to compete on an even playing field.

        [EDIT: Dumb grammar ]
        This again is a function of total unit numbers. I'm sure that Soren could write an AI right now that would be able to deal with the flanking I describe easily on a 10x10 map with a total of 10 units.

        The problem becomes that as you add both map size and unit numbers, the amount of time it takes to process the AI becomes greater. Eventually it reaches a size where the time between turns becomes unfun.

        There are two ways to deal with this:
        1) Simplify the game mechanics to make the AI's job easier
        2) Rebalance the cost of units such that you reduce the total number of units.

        I would much much rather bring down the total number of units than decide on what game mechanisms to use based on an assumption that the AI will need to deal with hundreds or thousands of units.

        Comment


        • The first effect is that each node of the influence map, threat matrix, or whatever mathematical representation of threats, for the AI, gets increased by a factor of 8 (or 4 if you only use 4 cardinal directions.) The decision space is theoretically, modified by the power of 4, or 8, for any given number of troops.

          Whilst you can always optimize representations, the increase in workload will always be significant... maybe too much so. Even 250 units would cause monumental issues for this approach. How few units are acceptable in a civ game?

          Changing the ZOC rules was a design decision very much like this. Except dealing with directional flanking is far, far more complex to do optimally. You'd almost enevitably see a limited scope, formulaic solution, which would be easy to adapt to, and beat, once the pattern was discovered.

          Comment


          • Originally posted by hexagonian

            Establishing your front with a single order like 'Fortify this Direction...' is very workable, though having the ability to do it on a unit-by-unit basis probably ends up as tedium overkill.
            Easy. Allow commands like fortify and entrench to work for stacks (stacks meaning units that move together, not units that attack together).

            Comment


            • Originally posted by Fosse
              The last thing I want to have to do is fortify a unit or a stack of units and then have to pick a direction. Can't we assume for play purposes that the commanders of those units will have some tiny amount of intelligence (in both senses of the word)?


              You DON'T. Entrench is an EXTRA command given as a BONUS to only some units. You can fortify instead if you want to.

              Comment


              • Originally posted by skywalker
                You DON'T. Entrench is an EXTRA command given as a BONUS to only some units. You can fortify instead if you want to.
                Problem is that you'd just be introducing a feature which the human could use effectively, but the AI could not, thus making the AI relatively speaking, worse.

                Comment


                • I wasn't responding to AI concerns, I was responding to MM concerns.

                  Comment


                  • The whole concept is flawed if the AI can't use it, however.

                    Comment


                    • Originally posted by MrBaggins
                      The first effect is that each node of the influence map, threat matrix, or whatever mathematical representation of threats, for the AI, gets increased by a factor of 8 (or 4 if you only use 4 cardinal directions.) The decision space is theoretically, modified by the power of 4, or 8, for any given number of troops.

                      Whilst you can always optimize representations, the increase in workload will always be significant... maybe too much so. Even 250 units would cause monumental issues for this approach. How few units are acceptable in a civ game?

                      Changing the ZOC rules was a design decision very much like this. Except dealing with directional flanking is far, far more complex to do optimally. You'd almost enevitably see a limited scope, formulaic solution, which would be easy to adapt to, and beat, once the pattern was discovered.
                      First off, I would like the game balanced such that in the end of the game there are about 10% to 25% of the amount of units there are now.

                      Secondly, the minimal system requirement of a game that probably won't be released for 2 years will be significantly higher than the requirements for Civ3 (by that point 5 years old).

                      Those two things alone should allow the people designing game mechanics to implement more dynamic use of terrain without crippling the AI.

                      That said, I'm not sure that the coding is necessarily that much more difficult vs a CTP style flanking calculation. In both cases you have to first assess whether the enemy has the ability to flank. If the enemy doesn't have flanking units, then why bother to factor flanking into your threat matrix.

                      Once you know that they have the capability of flanking, the threat matrix calculation certainly does not need to include all 8 surrounding tiles.

                      ABC
                      DEF
                      GHI

                      If I am checking E for its defensive usefulness against H, flanking, as I've implemented it only makes you look at D and F for possible flanking potential.

                      Note that the code for the AI understanding what direction an attack comes from is already in place so that the AI can use the defensive bonus of rivers correctly.

                      Comment


                      • ... or it's not in place, and the AI just ignores rivers

                        Comment


                        • Originally posted by wrylachlan


                          First off, I would like the game balanced such that in the end of the game there are about 10% to 25% of the amount of units there are now.
                          Very unpopular. People want more units not less. This inflation effect has been happening since Civ1.

                          Secondly, the minimal system requirement of a game that probably won't be released for 2 years will be significantly higher than the requirements for Civ3 (by that point 5 years old).

                          Those two things alone should allow the people designing game mechanics to implement more dynamic use of terrain without crippling the AI.
                          Civ3 already runs pretty slow on (fast) existing systems. Systems might be about twice as fast by then, but certainly not enough to deal with magnitudes of difference.

                          That said, I'm not sure that the coding is necessarily that much more difficult vs a CTP style flanking calculation. In both cases you have to first assess whether the enemy has the ability to flank. If the enemy doesn't have flanking units, then why bother to factor flanking into your threat matrix.
                          Correct, although the issue appears with early units... horses... basically.

                          Once you know that they have the capability of flanking, the threat matrix calculation certainly does not need to include all 8 surrounding tiles.

                          ABC
                          DEF
                          GHI

                          If I am checking E for its defensive usefulness against H, flanking, as I've implemented it only makes you look at D and F for possible flanking potential.
                          Thats an optimization given 2 units (and attacks and entrenching only being possible for 4 cardinal directions) AND assuming a move of 2. If you are saying that E and H contain multiple units then its NOT as simple Once you extend movement, by road and railroad, the possibilities get significantly more complex. Once you start getting into the realm of 100 units in a 2500 tile region, it becomes unmanagable.

                          Note that the code for the AI understanding what direction an attack comes from is already in place so that the AI can use the defensive bonus of rivers correctly.
                          The number of river squares is and has always been, managable... you only need to apply (slightly) different heuristic rules when you are adjacent to the river, thus limiting their effect on the decision space massively. This doesn't indicate an understanding of 'front lines' or attack directions, as you say. Merely a limited difference in ruleset, in a limited situation.

                          Comment


                          • Originally posted by MrBaggins Very unpopular. People want more units not less. This inflation effect has been happening since Civ1.
                            Not types of units, total units. And the inflation effect on total units has NOT been popular. The tediousness of moving units is a very, very common Civ3 complaint.
                            Civ3 already runs pretty slow on (fast) existing systems. Systems might be about twice as fast by then, but certainly not enough to deal with magnitudes of difference.
                            I didn't say that by itself it was, but it is a factor. Add onto that the penetration of vector calculation units like SSE2 and Altivec which are very well suited to these types of calculations and you do see a boost.
                            Correct, although the issue appears with early units... horses... basically.
                            Yes, but the AI doesn't need to make the calculation for every unit every turn. If I have a unit in the center of my territory with no enemies around, I don't have to run the calculation for that unit. I only need to actually run the calculation when I get closer to battle.
                            Thats an optimization given 2 units (and attacks and entrenching only being possible for 4 cardinal directions) AND assuming a move of 2. If you are saying that E and H contain multiple units then its NOT as simple Once you extend movement, by road and railroad, the possibilities get significantly more complex. Once you start getting into the realm of 100 units in a 2500 tile region, it becomes unmanagable.
                            This is a factor of the movement system which, this being a movement and supply thread, will probably have changes. For instance, limiting the roads and RR to single lines between cities instead of the way it is currently on every tile would dramatically cut down the decision space.
                            The number of river squares is and has always been, managable... you only need to apply (slightly) different heuristic rules when you are adjacent to the river, thus limiting their effect on the decision space massively. This doesn't indicate an understanding of 'front lines' or attack directions, as you say. Merely a limited difference in ruleset, in a limited situation.
                            Yes, but the code to determine the defensive value of a tile that borders a river is predicated on what direction the attack comes from. Therefore the AI must make some sort of calculation of where the attack is likely to come from.

                            Comment


                            • Originally posted by wrylachlan
                              Not types of units, total units. And the inflation effect on total units has NOT been popular. The tediousness of moving units is a very, very common Civ3 complaint.
                              I don't think so. I think that players like lots of units, but don't like managing lots of units. Stacks are a great solution.

                              I didn't say that by itself it was, but it is a factor. Add onto that the penetration of vector calculation units like SSE2 and Altivec which are very well suited to these types of calculations and you do see a boost.
                              The applications of SSE and Altivec are overwhelmingly floating point calculations for very specific vector calculations. They have zero application in the integer intensive influence maps/threat matrixes. You need a brute force ALU approach for that, and they only go so fast.

                              Yes, but the AI doesn't need to make the calculation for every unit every turn. If I have a unit in the center of my territory with no enemies around, I don't have to run the calculation for that unit. I only need to actually run the calculation when I get closer to battle.This is a factor of the movement system which, this being a movement and supply thread, will probably have changes. For instance, limiting the roads and RR to single lines between cities instead of the way it is currently on every tile would dramatically cut down the decision space.
                              If their unit is siting on railroad you do need to consider its flanking if an your unit(s) with flanking can enter it... which probably means all units garrisoning their cities.

                              Regarding the road and rail limits... It seems as though this system has huge entry requirements and overhead to be implemented, when it can be implemented simply easily and effectively integrated into stacking attacks, as per CtP. Why does this concept deserve all this consideration and limitation?

                              Yes, but the code to determine the defensive value of a tile that borders a river is predicated on what direction the attack comes from. Therefore the AI must make some sort of calculation of where the attack is likely to come from.
                              Likely uses simple coordinate math to determine a 90% arc of approach, that is... if the AI does consider in its strategy.
                              Last edited by MrBaggins; January 23, 2004, 17:47.

                              Comment


                              • Originally posted by MrBaggins I don't think so. I think that players like lots of units, but don't like managing lots of units. Stacks are a great solution.
                                We're going to have to agree to disagree. I think people like lots of decisions. Since the decision matrix in the current mechanism is so simplistic, that desire is filled by total numbers. I think the vast majority of players if you gave them the choice between lots of units with a simple game mechanics and fewer units that you have to think more carefully about, would choose the fewer units.
                                The applications of SSE and Altivec are overwhelmingly floating point calculations for very specific vector calculations. They have zero application in the integer intensive influence maps/threat matrixes. You need a brute force ALU approach for that, and they only go so fast.
                                Since you seem to know a whole lot about this, can you explain it for me. It would seem to me that threat matrixes are inherently imprecise and would not require the precision that integral calculations give you. Also it would seem to me that matrix transformations are one of the things that vector units do exceptionally well. I'm totally willing to admit I'm out of my depth on this issue, so feel free to throw down some links so I can read up.
                                If your unit is siting on railroad you do need to consider its flanking if an enemy unit with flanking can enter it... which probably means all units.
                                Yes, but If I'm sitting on a RR between 2 mountains then I can assume that I can't be flanked. I run that calculation once and then I can ignore the flanking consideration of any unit on the RR. This doesn't work if the mountains are covered in RR. So yes, making sure that every tile does not have RR does cut down the decision space.
                                Regarding the road and rail limits... It seems as though this system has huge entry requirements and overhead to be implemented,
                                I'm willing to argue your other points on their merits, but this is a total red herring. The code to add an upkeep cost to RR is trivial. The code to give a city a bonus based on the number of attached cities is also trivial.
                                when it can be implemented simply easily and effectively integrated into stacking attacks, as per CtP. Why does this concept deserve all this consideration and limitation?
                                It deserves consideration because I don't really love the CTP stack system. If that wasn't obvious you've been sleeping. As to why it deserves "limitations" I think you're mistaking my motives. I don't want the RR limits to make the flanking idea work. I want the RR limits because I think its the right direction to take civ. It just happens to also make the AI for the flanking idea easier.

                                I also want to rebalance the number of units for its own sake. That it happens to play into our current discussion of flanking is an ancillary benefit.

                                Comment

                                Working...
                                X